package com.reform.pojo.project;

import com.baomidou.mybatisplus.annotation.TableName;

import java.lang.reflect.Member;
import java.time.LocalDate;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableField;

import java.io.Serializable;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * VIEW
 * </p>
 *
 * @author mortale
 * @since 2021-07-21
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("view_project")
@ApiModel(value = "ViewProject对象", description = "VIEW")
public class ViewProject implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "批次编号")
    @TableField("batch_id")
    private String batchId;

    @ApiModelProperty(value = "教研项目编号")
    @TableField("pro_id")
    private String proId;

    @ApiModelProperty(value = "教研项目名称")
    @TableField("pro_name")
    private String proName;

    @ApiModelProperty(value = "项目审核(-1 申报 0  暂存  1   提交    2  学院通过  3 专家审核    4  学校通过   5   驳回  6  学院不通过   7 学校不通过  8 院级阶段检查通过 9 院级阶段检查不通过  10 校级阶段检查通过 11 校级阶段检查不通过 12 学院结项检查通过 13 学院结项不通过 14 专家结项通过 15学校结项通过 16 学校结项不通过 17校级同意延期 18校级不同意延期 19 申请延期 20 院级同意延期 21 院级不同意延期)")
    @TableField("pro_approval")
    private Integer proApproval;

    @ApiModelProperty(value = "项目类别")
    private String classification;

    @ApiModelProperty(value = "项目学科")
    @TableField("pro_subject")
    private String proSubject;

    @ApiModelProperty(value = "项目留存电话(办公电话)")
    @TableField("pro_telephone")
    private String proTelephone;

    @ApiModelProperty(value = "项目预留电话(手机)")
    @TableField("pro_phone")
    private String proPhone;

    @ApiModelProperty(value = "项目预留邮箱")
    @TableField("pro_email")
    private String proEmail;

    @ApiModelProperty(value = "项目开始时间(yyyy-MM)")
    @TableField("pro_startdate")
    private String proStartdate;

    @ApiModelProperty(value = "项目结束时间(yyyy-MM)")
    @TableField("pro_enddate")
    private String proEnddate;

    @ApiModelProperty(value = "项目问题分析(副文本形式)")
    @TableField("pro_analysis")
    private String proAnalysis;

    @ApiModelProperty(value = "项目存在的问题(副文本形式)")
    @TableField("pro_problem")
    private String proProblem;

    @ApiModelProperty(value = "项目预期成果(副文本形式)")
    @TableField("pro_expection")
    private String proExpection;

    @ApiModelProperty(value = "项目总体安排及进度(副文本形式)")
    @TableField("pro_arrange")
    private String proArrange;

    @ApiModelProperty(value = "项目已有的工作成果(副文本形式)")
    @TableField("pro_results")
    private String proResults;

    @ApiModelProperty(value = "工作委员会意见(副文本形式)")
    @TableField("pro_committee")
    private String proCommittee;

    @ApiModelProperty(value = "委员会时间(yyyy-MM-dd)")
    @TableField("committee_date")
    private String committeeDate;

    @ApiModelProperty(value = "专家审批意见(副文本形式)")
    @TableField("pro_experts")
    private String proExperts;

    @ApiModelProperty(value = "专家时间(yyyy-MM-dd)")
    @TableField("experts_date")
    private String expertsDate;

    @ApiModelProperty(value = "学习审批意见(副文本形式)")
    @TableField("pro_school")
    private String proSchool;

    @ApiModelProperty(value = "学校时间(yyyy-MM-dd)")
    @TableField("school_date")
    private String schoolDate;

    @ApiModelProperty(value = "项目申报人所在部门")
    @TableField("pro_department")
    private String proDepartment;

    @ApiModelProperty(value = "项目申报人所在部门编号")
    @TableField("pro_dep_id")
    private Integer proDepId;

    @ApiModelProperty(value = "项目创建时间(yyyy-MM-dd  HH-mm-ss)")
    @TableField("create_date")
    private String createDate;

    @ApiModelProperty(value = "学院分数(用于排序)")
    @TableField("department_score")
    private Integer departmentScore;

    @ApiModelProperty(value = "延期原因")
    @TableField("delay_cause")
    private String delayCause;

    @ApiModelProperty(value = "项目成员编号")
    @TableField("member_id")
    private Integer memberId;

    @ApiModelProperty(value = "成员姓名")
    @TableField("member_name")
    private String memberName;

    @ApiModelProperty(value = "成员年龄")
    @TableField("member_age")
    private String memberAge;

    @ApiModelProperty(value = "成员性别")
    @TableField("member_sex")
    private String memberSex;

    @ApiModelProperty(value = "成员专业技术职称(来自dict_title.title_name)")
    @TableField("member_title")
    private String memberTitle;

    @ApiModelProperty(value = "职务(来自dict_job.job_name)")
    @TableField("member_job")
    private String memberJob;

    @ApiModelProperty(value = "所在部门")
    @TableField("member_dep")
    private String memberDep;

    @ApiModelProperty(value = "主要研究领域")
    @TableField("member_researchareas")
    private String memberResearchareas;

    @ApiModelProperty(value = "项目中的分工")
    @TableField("member_division")
    private String memberDivision;

    @ApiModelProperty(value = "签名(仅保存电子签名路径)")
    @TableField("member_signature")
    private String memberSignature;

    @ApiModelProperty(value = "排名")
    private Integer ranking;

    @ApiModelProperty(value = "所属(工号  本校   1外校)")
    private String belong;

    @ApiModelProperty(value = "身份证号")
    private String idcard;


    @ApiModelProperty(value = "研究工作简历编号")
    @TableField("searching_id")
    private Integer searchingId;

    @ApiModelProperty(value = "教研工作时间(yyyy-MM)||(yyyy-MM—yyyy-MM)")
    @TableField("searching_date")
    private String searchingDate;

    @ApiModelProperty(value = "项目名称")
    @TableField("searching_name")
    private String searchingName;

    @ApiModelProperty(value = "项目来源")
    @TableField("searching_source")
    private String searchingSource;

    @ApiModelProperty(value = "项目状态")
    @TableField("searching_searchstatus")
    private String searchingSearchstatus;

    @ApiModelProperty(value = "获奖情况")
    @TableField("searching_awards")
    private String searchingAwards;

    @ApiModelProperty(value = "佐证材料(仅保留路径)")
    @TableField("searching_materials")
    private String searchingMaterials;

    @ApiModelProperty(value = "[0  手动录入  1 自动录入]")
    private Integer handwriting;

    @ApiModelProperty(value = "教学工作简历编号")
    @TableField("teaching_id")
    private Integer teachingId;

    @ApiModelProperty(value = "教学工作时间(yyyy-MM)||(yyyy-MM—yyyy-MM)")
    @TableField("teaching_date")
    private String teachingDate;

    @ApiModelProperty(value = "课程名称")
    @TableField("teaching_coursename")
    private String teachingCoursename;

    @ApiModelProperty(value = "授课对象")
    @TableField("teaching_prelectobject")
    private String teachingPrelectobject;

    @ApiModelProperty(value = "学时")
    @TableField("teaching_learnhour")
    private String teachingLearnhour;

    @ApiModelProperty(value = "所在单位名称")
    @TableField("teaching_department")
    private String teachingDepartment;

    @ApiModelProperty(value = "批次级别名称")
    @TableField("level_name")
    private String levelName;

}
